<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Rpt_finan_pagos extends MN_Controller {

    function __construct() {
        parent::__construct();
        $this->load->database();
        $this->load->helper(array('url', 'form'));
        $this->load->library('ion_auth');
        $this->load->model('Periodos_Model');
        $this->load->model('Docente_Model');
        $this->load->model('Pensum_Model');
        $this->load->model('Carrera_Model');
        $this->load->model('Ciclos_Model');
        $this->load->model('Materia_Model');
        $this->load->model('Estudiante_Model');
    }

    public function index() {

        if (!$this->ion_auth->logged_in() || !$this->ion_auth->is_admin() ) {
            $this->session->set_flashdata('message', 'No pertence al grupo de Docentes');
            redirect('auth/login', 'refresh');
        }
        $this->data['user'] = $this->ion_auth->get_user_username();
    }
    public function procesarecibo() {
        if (!$this->ion_auth->logged_in() || !$this->ion_auth->is_admin() ) {
            $this->session->set_flashdata('message', 'No pertence al grupo de Docentes');
            redirect('auth/login', 'refresh');
        }
        $this->data['user'] = $this->ion_auth->get_user_username();
        if (isset($_SESSION['ses_pagodoc'])){
            unset($_SESSION['ses_pagodoc']);
        }else{
        session_start();    
        }
        
        

        $this->load->helper('numeros');
        $this->load->model('Matricula_Model');
        $this->load->model('Cursa_Model');
        $this->load->model('Planesp_Model');
        $this->load->model('Recibo_detalle');

        //$id_matr = $this->uri->segment(4); 3608
        $id_matr = $this->uri->segment(4);
        $opc = $this->uri->segment(3);

        //$forma_pago = $this->uri->segment(5);

        $this->data['inscrito'] = $this->Matricula_Model->getDatosMatricula($id_matr);

        $cursa = $this->Cursa_Model->getDatosCursa($id_matr);
        $forma_pago = $this->data['inscrito'][0]['forma_pago'];
        $this->data['forma_pago'] = $forma_pago;

        $ide_lec = $this->Periodos_Model->getDatosPeriodo($cursa[0]['periodos_lectivos_ide_lec']);

        $this->data['costo_lec'] = ($this->Matricula_Model->getCostoSemestre($id_matr) > 0 ? $this->Matricula_Model->getCostoSemestre($id_matr) :
                        $this->Periodos_Model->getCostoSemestre($cursa[0]['periodos_lectivos_ide_lec']));
        $ide_car = $this->Carrera_Model->getDatosCarrera($cursa[0]['ide_car']);
        $ide_pen = $this->Pensum_Model->getDatosPensum($cursa[0]['ide_pen']);
        $ide_ciclo = $this->Ciclos_Model->getDatosCiclo($cursa[0]['ide_cic']);
        $seccion = $cursa[0]['seccion'];
        $paralelo = $cursa[0]['paralelo'];

        $cod_pers = $this->Estudiante_Model->getDatosIdePers($cursa[0]['estudiante_ide_est']);

        //$this->data['materias'] = $this->Distributivo_Model->getDatosDistributivo($ide_lec[0]['ide_lec'], $ide_car[0]['ide_car'], $ide_pen[0]['ide_pen'], $ide_ciclo[0]['ide_cic'], $seccion, $paralelo, $ide_mat = null);
        $this->data['materias'] = $this->Cursa_Model->getCursaDistributivo($id_matr);
        $this->data['estudiante'] = $this->Estudiante_Model->getDatosEstudiante($cod_pers);
        $this->data['ide_lec'] = $ide_lec[0]['ide_lec'];
        $this->data['ide_car'] = $ide_car[0]['ide_car'];
        $this->data['ide_pen'] = $ide_pen[0]['ide_pen'];
        $this->data['ide_ciclo'] = $ide_ciclo[0]['ide_cic'];
        $this->data['seccion'] = $seccion;


        $this->data['id_matr'] = $id_matr;
        $modo_mat = $this->data['inscrito'][0]['modo_mat'];
        $tipo_matr = $this->data['inscrito'][0]['tipo_matr'];
        $this->data['tipo_doc_pago_mat'] = $this->data['inscrito'][0]['tipo_doc_pago_mat'];
        $tipo_doc=$this->data['tipo_doc_pago_mat'];

        if ($forma_pago == 4 || $forma_pago == 5 || $forma_pago == 6 || $forma_pago == 7 || $forma_pago == 11) {

            $this->data['pago_arrastre'] = $this->Planesp_Model->getPlanPagos("planes_pago_arrastre", $id_matr);
            $this->data['pago_inicial']=$this->data['pago_arrastre'][0]['pago_inicial'];
        }else{
            $this->data['pago_inicial']=0;

        }

        
        //echo ($this->data['inscrito'][0]['tipo_doc_pago_mat']);
    
        


        //$this->data['tipo_doc_pago_mat'] =$this->data['inscrito'][0]['tipo_doc_pago_mat'];
        //$cursa = $this->Cursa_Model->getDatosCursa($id_matr);
        $this->data['apellido_pers'] = $this->data['estudiante'][0]['apellido_pers'];
        $this->data['nombre_pers'] = $this->data['estudiante'][0]['nombre_pers'];
        $this->data['cedula_pers'] = $this->data['estudiante'][0]['cedula_pers'];
        $this->data['fono_pers'] = $this->data['estudiante'][0]['fono_pers'];
        $this->data['celular_pers'] = $this->data['estudiante'][0]['celular_pers'];
        $this->data['direccion_pers'] = $this->data['estudiante'][0]['direccion_pers'];
        $this->data['email_inst_pers'] = $this->data['estudiante'][0]['email_inst_pers'];
        
        $this->data['hoja_valor_mat'] = $this->data['inscrito'][0]['hoja_valor_mat'];

        $ses_matr = array();
        $nro=1;
        if ($tipo_doc>1){

            $detalle_recibo=$this->Recibo_detalle->getdatos($id_matr);
            
            if (count($detalle_recibo)>0){

                $fil=2;
                $ses_matr[0] = array(
                    'doc1' =>$this->data['inscrito'][0]["nom_doc_pago_mat"],
                    'doc2' => $this->data['inscrito'][0]["nro_comp_pago_mat"],
                    'doc3' => $this->data['inscrito'][0]["ref_doc_pago_mat"],
                    'doc4' => $this->data['inscrito'][0]["monto_rest_doc_pago"],
                    'doc5' => $this->data['inscrito'][0]["monto_efec_doc_pago"],
                    'doc6' => (($tipo_doc==3 || $tipo_doc==6)?$this->data['inscrito'][0]["fechadep_doc_pago_mat"]
                                :0),
                    'doc7' => $this->data['inscrito'][0]["lote_doc_pago_mat"],
                    'nro'=>1);

                foreach ($detalle_recibo as $row) {
                    
                    $aux=array(
                    'doc1' => $row["nom_doc_pago"],
                    'doc2' => $row["nro_comp_pago"],
                    'doc3' => $row["ref_doc_pago"],
                    'doc4' => ($row["monto_rest_pago"]),
                    'doc5' => ($row["monto_efec_pago"]),
                    'doc6' => (($tipo_doc==3 || $tipo_doc==6)?$row["fechadep_doc_pago_mat"]
                                :0),
                    'doc7' => $row["lote_doc_pago"],
                    'nro'=>$fil);
                    $fil++;
                    $ses_matr[]=$aux;


                }

            }else{
                $ses_matr[0] = array(
                    'doc1' =>$this->data['inscrito'][0]["nom_doc_pago_mat"],
                    'doc2' => $this->data['inscrito'][0]["nro_comp_pago_mat"],
                    'doc3' => $this->data['inscrito'][0]["ref_doc_pago_mat"],
                    'doc4' => (($tipo_doc==5 || $tipo_doc==6 || $tipo_doc==7)?$this->data['inscrito'][0]["monto_rest_doc_pago"]
                                :$this->data['inscrito'][0]["monto_canc_matr"]),
                    'doc5' => (($tipo_doc==5 || $tipo_doc==6 || $tipo_doc==7)?$this->data['inscrito'][0]["monto_efec_doc_pago"]
                                :0),
                    'doc6' => (($tipo_doc==3 || $tipo_doc==6)?$this->data['inscrito'][0]["fechadep_doc_pago_mat"]
                                :0),
                    'doc7' => $this->data['inscrito'][0]["lote_doc_pago_mat"],
                    'nro'=>1);


            }

            
            $_SESSION['ses_pagodoc']=$ses_matr;   
            //print_r($ses_matr);     


        }
        $detalle = array(
            array("valor0"=>$this->data['inscrito'][0]['monto_canc_matr'],"descrip0"=>"Pago Inicial"),
            array("valor1"=>$this->data['pago_inicial'],"descrip1"=>"Pago Arrastre"),
            array("valor2"=>$this->data['hoja_valor_mat'],"descrip2"=>"Hoja Membretado"),
            );


        $this->data['monto_canc_matr'] = $this->data['inscrito'][0]['monto_canc_matr']+$this->data['pago_inicial']
            +$this->data['hoja_valor_mat'];


        $this->data['nro_recibo'] = $this->data['inscrito'][0]['nro_recibo_mat'];
        
        $this->data['monto_letras'] = num_to_letras($this->data['inscrito'][0]['monto_canc_matr']);
        $this->data['id_matr'] = $id_matr;
        $this->data['detalle'] = $detalle;
        //print_r($detalle);

        //$recargo = ($inscrito[0]['tipo_matr'] >1 ? " CON RECARGO " : "");        
        $concepto =  "".($this->data['inscrito'][0]['tipo_matr'] >1 ? " CON RECARGO " : "");;
        $this->data['tipo_matr'] = $tipo_matr; //monto_canc_matr 

        $this->data['concepto'] = "POR CONCEPTO DE PAGO DE MATRICULA " .!empty($concepto)
                    ." EN LA CARRERA DE ".$ide_car[0]['nombre_car'].
                    " EN EL ".$ide_ciclo[0]['nombre_cic']. " SECCION ".
                    ($seccion == 1 ? "DIURNO" : ($seccion == 2 ? "NOCTURNO" : "FINES DE SEMANA"));

 
            if($opc==1){
               $this->data['pagina']='pagoinicial';
            }else{
                $this->data['pagina']='pagotodos';
            }



        $html = $this->load->view('recibo/recibo_pago', $this->data, true);
        $path = $this->dompdf_lib->createPDF($html, 'myfilename1', false,"a3");

        $this->data['path'] = $path;
        

        $this->_render('recibo/reporte1');
          
           
            
            //
            
    }
    
    public function procesarm() {
        if (!$this->ion_auth->logged_in() || !$this->ion_auth->is_admin() ) {
            $this->session->set_flashdata('message', 'No pertence al grupo de Docentes');
            redirect('auth/login', 'refresh');
        }
        $this->data['user'] = $this->ion_auth->get_user_username();

        $this->load->model('Matricula_Model');
        $this->load->model('Cursa_Model');
        $this->load->model('Planesp_Model');
        //$id_matr = $this->uri->segment(4); 3608
        $id_matr = $this->uri->segment(4);
        $opc = $this->uri->segment(3);

        //$forma_pago = $this->uri->segment(5);

        $this->data['inscrito'] = $this->Matricula_Model->getDatosMatricula($id_matr);

        $cursa = $this->Cursa_Model->getDatosCursa($id_matr);
        $forma_pago = $this->data['inscrito'][0]['forma_pago'];
        $this->data['forma_pago'] = $forma_pago;

        $ide_lec = $this->Periodos_Model->getDatosPeriodo($cursa[0]['periodos_lectivos_ide_lec']);

        $this->data['costo_lec'] = ($this->Matricula_Model->getCostoSemestre($id_matr) > 0 ? $this->Matricula_Model->getCostoSemestre($id_matr) :
                        $this->Periodos_Model->getCostoSemestre($cursa[0]['periodos_lectivos_ide_lec']));
        $ide_car = $this->Carrera_Model->getDatosCarrera($cursa[0]['ide_car']);
        $ide_pen = $this->Pensum_Model->getDatosPensum($cursa[0]['ide_pen']);
        $ide_ciclo = $this->Ciclos_Model->getDatosCiclo($cursa[0]['ide_cic']);
        $seccion = $cursa[0]['seccion'];
        $paralelo = $cursa[0]['paralelo'];

        $cod_pers = $this->Estudiante_Model->getDatosIdePers($cursa[0]['estudiante_ide_est']);

        //$this->data['materias'] = $this->Distributivo_Model->getDatosDistributivo($ide_lec[0]['ide_lec'], $ide_car[0]['ide_car'], $ide_pen[0]['ide_pen'], $ide_ciclo[0]['ide_cic'], $seccion, $paralelo, $ide_mat = null);
        $this->data['materias'] = $this->Cursa_Model->getCursaDistributivo($id_matr);
        $this->data['estudiante'] = $this->Estudiante_Model->getDatosEstudiante($cod_pers);
        $this->data['ide_lec'] = $ide_lec[0]['ide_lec'];
        $this->data['ide_car'] = $ide_car[0]['ide_car'];
        $this->data['ide_pen'] = $ide_pen[0]['ide_pen'];
        $this->data['ide_ciclo'] = $ide_ciclo[0]['ide_cic'];
        $this->data['seccion'] = $seccion;



        $this->data['id_matr'] = $id_matr;
        $modo_mat = $this->data['inscrito'][0]['modo_mat'];
        $tipo_matr = $this->data['inscrito'][0]['tipo_matr'];
        $this->data['observ_pago'] = $this->data['inscrito'][0]['observ_pago'];


        $this->data['costo_inscrip_lec'] = $ide_lec[0]['costo_inscrip_lec'];
        //$this->data['tipo_doc_pago_mat'] =$this->data['inscrito'][0]['tipo_doc_pago_mat'];
        //$cursa = $this->Cursa_Model->getDatosCursa($id_matr);
        $this->data['valor_teoricas'] = $ide_lec[0]['cost_teor_lec'];
        $this->data['valor_practicas'] = $ide_lec[0]['cost_pract_lec'];
        $this->data['id_matr'] = $id_matr;
        //echo ($observ_pago);




        $forma_pago = $this->data['inscrito'][0]['forma_pago'];


        //echo ("la forma de pagos es $forma_pago ");
        if ($forma_pago == 4 || $forma_pago == 5 || $forma_pago == 6 || $forma_pago == 7 || $forma_pago == 11) {
            $monto_canc_matr = $this->data['inscrito'][0]['monto_canc_matr'];
            

            if ($this->Planesp_Model->VerificarPlan("planes_pago_semestre", $id_matr) == TRUE ||
                    $this->Planesp_Model->VerificarPlan("planes_pago_arrastre", $id_matr) == TRUE) {
                $pago_semestre = $this->Planesp_Model->getPlanPagos("planes_pago_semestre", $id_matr);
                $pago_arrastre = $this->Planesp_Model->getPlanPagos("planes_pago_arrastre", $id_matr);


                $nro_credito = $this->Matricula_Model->getNroCreditoAsignado($id_matr);
                $this->data['nro_credito'] = $nro_credito;
                $this->data['valor_financiar1'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['valor_financiar']);
                $this->data['nro_cuotas_plan1'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['nro_cuotas_plan']);
                $this->data['valor_financiar2'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['valor_financiar']);
                $this->data['nro_cuotas_plan2'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['nro_cuotas_plan']);
                $this->data['couta1_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['couta1_plan']);
                $this->data['couta2_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['couta2_plan']);
                $this->data['couta3_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['couta3_plan']);
                $this->data['couta4_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['couta4_plan']);
                $this->data['couta5_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['couta5_plan']);
                $this->data['couta6_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['cuota6_plan']);
                $this->data['couta7_plan_s'] = (empty($pago_semestre) ? 0 : $pago_semestre[0]['cuota7_plan']);
                $this->data['couta1_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['couta1_plan']);
                $this->data['couta2_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['couta2_plan']);
                $this->data['couta3_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['couta3_plan']);
                $this->data['couta4_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['couta4_plan']);
                $this->data['couta5_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['couta5_plan']);
                $this->data['couta6_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['cuota6_plan']);
                $this->data['couta7_plan_a'] = (empty($pago_arrastre) ? 0 : $pago_arrastre[0]['cuota7_plan']);
            }





            $this->data['apellido_pers'] = $this->data['estudiante'][0]['apellido_pers'];
            $this->data['nombre_pers'] = $this->data['estudiante'][0]['nombre_pers'];
            $this->data['cedula_pers'] = $this->data['estudiante'][0]['cedula_pers'];
            $this->data['fono_pers'] = $this->data['estudiante'][0]['fono_pers'];
            $this->data['celular_pers'] = $this->data['estudiante'][0]['celular_pers'];
            $this->data['direccion_pers'] = $this->data['estudiante'][0]['direccion_pers'];
            $this->data['email_inst_pers'] = $this->data['estudiante'][0]['email_inst_pers'];

            $this->data['ide_car'] = $ide_car[0]['nombre_car'];
            $this->data['ide_ciclo'] = $ide_ciclo[0]['nombre_cic'];
            $this->data['seccion'] = ($seccion == 1 ? "DIURNO" : ($seccion == 2 ? "NOCTURNO" : "FINES DE SEMANA"));
            $this->data['tipo_matr'] = $tipo_matr; //monto_canc_matr 




            $mystring = strtoupper($ide_lec[0]['descripcion_lec']);
            $pos = strpos($mystring, "ABRIL");
            $this->data['periodo'] = ($pos === false ? 2 : 1);
            $this->load->model('Cursa_Model');
            $cursa = $this->Cursa_Model->getDatosCursa($id_matr);
            $this->data['modo_mat'] = $modo_mat;


            $this->data['materias'] = $this->Cursa_Model->getCursaDistributivo($id_matr);
            $ide_lec = $this->Periodos_Model->getDatosPeriodo($cursa[0]['periodos_lectivos_ide_lec']);
            $this->data['valor_teoricas'] = $ide_lec[0]['cost_teor_lec'];
            $this->data['valor_practicas'] = $ide_lec[0]['cost_pract_lec'];


            $this->data['concepto'] = "NO APLICA ";
            if($opc==1){
                $html = $this->load->view('pagoinicial/credito', $this->data, true);
            }else{
                $html = $this->load->view('pagotodos/credito', $this->data, true);
            }
                
            $path = $this->dompdf_lib->createPDF($html, 'myfilename', false);
            $this->data['path'] = $path;
            $this->data['detalle'] = "NO APLICA";
            $this->data['volver'] = "SI";
            
            if($opc==1){
                $this->_render('pagoinicial/reporte');
            }else{
                $this->_render('pagotodos/reporte');
            }
            
            //
            
        }else{
            if($opc==1){
               redirect("pagoinicial/inicio/" . $ide_lec[0]['ide_lec']);
            }else{
                redirect("pagotodos/inicio/" . $ide_lec[0]['ide_lec']);
            }

            
        }
    }

    
    
   

}
